package com.jdk.demo.list.arraylist;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

// 接下来我们一起来看下fail-fast机制。什么是fail-fast机制呢？其实fail-fast机制是集合中的一种错误检测机制，我们在操作集合中经常会遇到 java.util.ConcurrentModificationException异常，产生该异常的原因就是fail-fast机制
public class ConcurrentModificationExceptionDemo {

	public static void main(String[] args) {
		List mDatas = new ArrayList<String>();

        mDatas.add("hello");
        mDatas.add("android");
        mDatas.add("java");

        Iterator<String> mIterator = mDatas.iterator();
        while (mIterator.hasNext()){
            //if ("android".equals(mIterator.next())){
                //mDatas.add("php");
            //}
        	if ("android".equals(mIterator.next())){
        		// 不会报错
        		mIterator.remove();
            }
        }
	}

}
